package com.hxy.subject.application.convert;

import com.hxy.subject.application.dto.AddSubjectLabelDTO;
import com.hxy.subject.application.dto.DelSubjectLabelDTO;
import com.hxy.subject.application.dto.EditSubjectLabelDTO;
import com.hxy.subject.application.dto.SubjectLabelDTO;
import com.hxy.subject.application.vo.SubjectCategoryVO;
import com.hxy.subject.application.vo.SubjectLabelVO;
import com.hxy.subject.domain.entity.SubjectCategoryBO;
import com.hxy.subject.domain.entity.SubjectLabelBO;
import com.hxy.subject.infra.basic.entity.SubjectLabel;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * @Author haoxuyang
 * @Date 2024/9/2 18:46
 */
@Mapper
public interface SubjectLabelDTOConverter {
    SubjectLabelDTOConverter INSTANCE = Mappers.getMapper(SubjectLabelDTOConverter.class);

    SubjectLabelBO subjectLabelDtoToBo(AddSubjectLabelDTO dto);

    SubjectLabelBO subjectLabelDtoToBo(EditSubjectLabelDTO dto);

    SubjectLabelBO subjectLabelDtoToBo(DelSubjectLabelDTO dto);

    SubjectLabelBO subjectLabelDtoToBo(SubjectLabelDTO dto);

    List<SubjectLabelVO> subjectLabelBoToVoList(List<SubjectLabelBO> boList);
}
